This invention relates to a control device and method for controlling ignition timings of an internal combustion engine, and more particularly to such a control device and method wherein a single crank angle reference signal is utilized both for the cylinder control timing determination and the cylinder discrimination.
Microcomputers are now commonly used for controlling the operational timings of internal combustion engines. The microcomputer receives, in addition to operation condition signals from various sensors, position signals generated in synchrony with the rotation of the engine, and thereby determines the operational position of each cylinder. The position signals corresponding to the reference crank angles of respective cylinders are generated by a signal generator which detects the rotation of the cam shaft or the crank shaft of the engine.
FIG. 3 is a block diagram showing a typical organization of a control device of an internal combustion engine. A rotation signal generator 8 generates a position signal L consisting of a train of pulses rising and falling at predetermined crank angles of respective cylinders. Various sensors 20 output operational condition signals D representing the load (acceleration) state, velocity, temperature, etc. These signals L and D are inputted via an interface circuit 9 to a microcomputer 10. In response thereto, the microcomputer 10 comprising a ROM 11 and a RAM 12 controls the fuel injection and the ignition timings. The ignition circuit for each cylinder of the engine comprises an ignition coil 14, a switching transistor 15 coupled to the primary side of the ignition coil 14, and a spark plug 16 coupled to the secondary side of the ignition coil 14. An output of the microcomputer 10 is coupled via an interface 13 to the base of the transistor 15, and interrupts the primary current of the ignition coil 14 at proper ignition timings to generate a spark across the spark plug 16
FIG. 4 shows an example of the rotation signal generator 8, and FIG. 5 shows the circuit organization thereof. A disk 2, mounted on top of a shaft 1 rotating in synchrony with the crank shaft of the engine, has elongated windows 3a and 3b extending along the circumference of the disk 2. FIG. 4 shows the case where the engine comprises four cylinders, No. 1 through No. 4, wherein window 3b corresponds to cylinder No. 1 (the particular cylinder which is to be discriminated, as described below) and the other three windows 3a correspond to cylinders Nos. 2 through 4. The front ends of the windows 3a and 3b correspond to first reference position (e.g., 75 degrees before top dead center, or B75.degree.) of respective cylinders, while the rear ends of the windows 3a and 3b correspond to the second reference positions of respective cylinders. The second reference position of the cylinders No. 2 through 4 is 5 degrees before top dead center (B5.degree.), for example. However the second reference position of the cylinder No. 1 (the particular cylinder) is retarded than that of other cylinders, and is equal, for example, to 5 degrees after top dead center (A5.degree.).
A light emitting diode 4 and a photodiode 5 together constitute a photocoupler. The light emitted from the light emitting diode 4 is received via the windows 3a and 3b by the photodiode 5. The output of the photodiode 5 is supplied via an amplifier 6 to the base of an output transistor 7 with a grounded emitter, whose open collector terminal outputs the position signal L.
The method of operation of the conventional control device of an engine shown in FIGS. 3 through 5 is as follows.
FIG. 6 shows the waveform of the position signal L, which consists of a train of pulses which rise and fall at first and second reference crank angles of respective cylinders, as indicated in the figure. The leading edge of each pulse corresponds to the first reference position, 75 degrees before top dead center (B75.degree.). The trailing edge of the pulses corresponds to the second reference position, which is equal to 5 degrees before top dead center (B5.degree.), in the case of cylinders No. 2 through 4, but is 5 degrees after top dead center (A5.degree.), in the case of cylinder No. 1, the particular cylinder. Thus, the particular cylinder (cylinder No. 1) can be discriminated from other cylinders from the ratio of the pulse-width to the pulse-repetition period T.
Thus, on the basis of the pulse-width to pulse-period ratios of the position signal L, the microcomputer 10 discriminates the particular cylinder, cylinder No. 1, and thereby determines the successive order of the cylinders. The ignition timings of respective cylinders are determined with reference to either the first or the second reference crank angle, as described below. Further, in response to the operation condition signals D, the microcomputer 10 reads out the optimal control values stored in the ROM 11, and determines, in accordance with the control program stored in the RAM 12, the optimal target ignition timings.
As shown in FIG. 7, the ignition timing .theta.x is usually set with respect to the first reference position B75.degree.. Thus, the microcomputer 10 calculates, at each first reference position B75.degree., the length of time Tx between the reference position B75.degree. and the target ignition position .theta.x, from the values of the preceeding pulse repetition period T.sub.n-1 and the optimal target position .theta.x. This is calculated as follows: EQU Tx=(.theta.x-B75.degree.).times.T.sub.n-1 /180 (1)
However, when the time length Tx between the first reference position B75.degree. and the ignition timing .theta.x become longer, the precision of the control is deteriorated. Thus, in the case where the ignition control position is shifted toward the retard side and occurs later than the second reference position B5.degree., as indicated by .theta.x' in FIG. 7, the microcomputer 10 calculates, at each second reference position B5.degree., the length of time Tx' between the second reference position B5.degree. and the target position .theta.x' as follows: EQU Tx'=(.theta.x'-B5.degree.).times.T.sub.n-1 /180, (2
)
such that the time length Tx' between the reference and the control position becomes shorter. The microcomputer 10 sets the time length Tx or Tx' in the timer within the MPU thereof, such that the ignition signal is generated at the target ignition timing.
Thus, in the case where the ignition timing is determined with respect to the first reference position B75.degree. , The microcomputer 10 executes an interrupt routine at B75.degree. as shown in FIG. 8:
First, at step S1, the preceeding pulse repetition period T.sub.n-1 (corresponding to 180.degree. rotation of the crank shaft) of the position signal L between the leading edges of the previous and current pulses (see FIG. 7) is determined.
Next, at step S2, the length of time Tx between the reference position B75.degree. and the target ignition position .theta.x is determined from the values of the preceeding pulse repetition period T.sub.n-1 and the target position .theta.x as follows: EQU Tx=(.theta.x-B75.degree.).times.T.sub.n-1 /180
The value of Tx is set in a timer within the microcomputer 10, such that the transistor 15 is turned off at the target position and the associated cylinder is ignited at the target point .theta.x.
The above conventional control device has the following disadvantage: As described above, when the target ignition position .theta.x is retarded than the second reference position, it is desirable to determined the ignition timing with respect thereto. However, since the second reference position A5.degree. of the particular cylinder is retarded than that of the other cylinders (B5.degree.), the second reference position A5.degree. thereof cannot be used as the reference with respect to the particular cylinder when the target ignition position is advanced than A5.degree.. Thus, when the pulse repetition period T undergoes hunting and goes up and down alternately as shown in FIG. 9, the control error from the target ignition position of the particular cylinder become especially conspicuous as shown by the solid curve in FIG. 10. This is due to the fact that the time length Tx as defined above with respect to the particular cylinder is greater than the time length Tx' from the second reference position with respect to other cylinders.